const fs = require("fs");
const zlib = require("zlib");

const unzip = zlib.createGunzip(); // 解压缩 gzip 流。

const inFile = fs.createReadStream("./123.gz"); // 创建文件的可读流。
const out = fs.createWriteStream("./123.txt"); // 创建到文件的可写流。

/* 
    inFile.pipe(unzip) 将读取到的gz文件传递给 unzip
    【inFile.pipe(unzip)】.pipe(out) 将解压文件传递给out写文件

    pipe
         它获取来源流，并将其通过管道传输到目标流
         在来源流上调用它
         方法的返回值是目标流
*/
inFile.pipe(unzip).pipe(out);

// 等价于

// inFile.pipe(unzip);
// unzip.pipe(out);
